﻿//--------------------------------------
// Copyright     : W.A.I.S. TECHNOLOGY 2003-2008 ; http://www.wais-fr.com ; email: infos@wais-fr.com
// Author        : Henri d'Orgeval
// Contributors  : 
// Last release  : 2007/10/24 (yy/mm/dd)
// Version       : 1.0.0.0
// Pattern       : "Real Time Trace"
// Internal name : ITraceable (RealTimeTrace Interfaces)
// Description   : this file contents all interfaces needed to implement RealTimeTrace
//                 
// Framework     : v2.0.50727 and above
//
// Licence       : Microsoft Permisse Licence
// W.A.I.S provides this code in the hope that it will be useful, but WITHOUT ANY WARRANTY , either express or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.          
// This library is free software; you can redistribute it and/or modify it under the terms of the Microsoft Permissive Licence
// The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
//---------------------------------------
using System;
using System.Collections.Generic;
//using System.Linq;
using System.Text;

namespace RealtimeTrace
{
    /// <summary>
    /// Interface between the Realtimetrace business logic layer and the underlying data source storage.
    /// </summary>
    public interface ITraceDataProvider
    {
        /// <summary>
        /// Insert into the Data Store the ItraceInfo object that holds 
        /// complete infos about the exception and its context.
        /// </summary>
        /// <param name="traceInfo">Any ITraceInfo object.</param>
        /// <returns>Returns true if insertion into the data store succeeded, false otherwise.</returns>
        bool Insert(ITraceInfo traceInfo);

        /// <summary>
        /// Gets or Sets if the Data store name should begin with the name of the running Executable.
        /// </summary>
        bool UseApplicationNameAsPrefix { get; set; }


    }
}
